Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optional subsystems #648

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Conversation

jkirk5
Copy link
Contributor

@jkirk5 jkirk5 commented Jan 22, 2025

Summary

Extends the capability for a subsystem to be "skipped" via the external method flag in phase_info to geometry and mass. The external method also now skips both pre-mission and mission.

Backwards incompatibilities

None

New Dependencies

None

"Users can develop alternative components and integrate them as subsystems with the existing platform.\n",
"\n",
"## External Mass\n",
"Specifying the `external` mass method disables Aviary's core mass group. This allows for external subsystems to completely replace these calculations."
Copy link
Member

@Kenneth-T-Moore Kenneth-T-Moore Jan 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should stress that, yeah, this replaces all mass calculations, so you don't want to use it for subsystem mass.

Also, it might be worth mentioning that, to replace the mass subsystem for the sizing problem, your new mass group needs to compute the Aircraft.Design.OPERATING_MASS and Aircraft.CrewPayload.TOTAL_PAYLOAD_MASS, which feed into the downstream constraints.

(Note: might need to check what the gasp mass feeds into the downstream components too.)


if code_origin is GASP:
aero_group = PreMissionAero()
if method != 'external':
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be cleaner to do:

if method is 'external':
    return None

That would remove the need to indent the entire rest of the method by 4 spaces. Just a thought.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants